#ifndef UC_BRM2DCTL_H
#define UC_BRM2DCTL_H 1

#include "zadesk.h"
#include "zrxobject.h"
#include "zrxboiler.h"
#include "ucbrgbl.h"
#include "ucbrmctl.h"


// forward class declarations
class UcBrMeshControl;


class DllImpExp UcBrMesh2dControl : public UcBrMeshControl
{
public:
    UCRX_DECLARE_MEMBERS(UcBrMesh2dControl);
    UcBrMesh2dControl();
    UcBrMesh2dControl(const UcBrMesh2dControl& src);
    ~UcBrMesh2dControl();
    
    // Assignment operator
    UcBrMesh2dControl&	operator =      (const UcBrMesh2dControl& src);

    // Queries & Initialisers
    UcBr::ErrorStatus   setMaxAspectRatio(const double& maxAspectRatio = *(double*)NULL);
    UcBr::ErrorStatus   getMaxAspectRatio(double& maxAspectRatio) const;
    UcBr::ErrorStatus   setElementShape	(const UcBr::Element2dShape& elementShape = *(UcBr::Element2dShape*)NULL);
    UcBr::ErrorStatus   getElementShape	(UcBr::Element2dShape& elementShape) const;
    UcBr::ErrorStatus   setMinSubdivisionsInU(const ZSoft::UInt32& minSubsU = *(ZSoft::UInt32*)NULL);
	UcBr::ErrorStatus   getMinSubdivisionsInU(ZSoft::UInt32& minSubsU) const;
    UcBr::ErrorStatus   setMinSubdivisionsInV(const ZSoft::UInt32& minSubsV = *(ZSoft::UInt32*)NULL);
	UcBr::ErrorStatus   getMinSubdivisionsInV(ZSoft::UInt32& minSubsV) const;
};


#endif